package cn.kgc.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
@Builder
@TableName(value = "resume")
@JsonInclude(value = JsonInclude.Include.ALWAYS)
@SuppressWarnings("all")
public class Resume extends Model<Resume> implements Serializable {

    /**
     * 主键 简历ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 简历的用户ID
     */
    @TableField(value = "user_id")
    private String userId;

    /**
     * 个人优势
     */
    @TableField(value = "advantage")
    private String advantage;

    /**
     * 个人优势的html内容，用于展示
     */
    @TableField(value = "advantage_html")
    private String advantageHtml;

    /**
     * 资格证书
     */
    @TableField(value = "credentials")
    private String credentials;

    /**
     * 技能标签
     */
    @TableField(value = "skills")
    private String skills;

    /**
     * 求职状态
     */
    @TableField(value = "status")
    private String status;

    /**
     * 刷新简历时间
     * 用户更改简历后保存简历信息的时间，保存（刷新）简历后HR才能看到最新的简历信息
     */
    @TableField(value = "refresh_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date refreshTime;

    /**
     * 创建时间
     */
    @TableField(value = "created_time", fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdTime;

    /**
     * 更新时间
     */
    @TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updatedTime;

}
